
#ifndef CONFIG_HPP
#define CONFIG_HPP

#include <string>
#include <fstream>
#include <map>
#include <vector>

using namespace std;

class Config
{
  static Config* s_instance;
  Config() { }
  multimap<string,string> m_keyValMap;
  multimap<string,string>::iterator iter;
public:
  static Config* instance();
  void read(const string& p_file);
  pair < string, vector<double> > element();
  bool next() const;
  //const string& string_scalar ( const string& p_key ) const;
  // bool has_key ( const string& p_key ) const;
  // vector<string> string_vector ( const string& p_key ) const;
  // int int_scalar ( const string& p_key ) const;
  // vector<int> int_vector ( const string& p_key ) const;
  // double double_scalar ( const string& p_key ) const;
  // vector<double> double_vector ( const string& p_key ) const;
  //bool bool_scalar ( const string& p_key ) const;
};

#endif
